为什么我建议你做数据仓库?
The following article is from 有关SQL Author Lenis
点击蓝色“数据仓库与Python”关注我哟
加个“星标”,天天与10000人一起快乐成长
正文
2010年,我到上海的第一年。年底回老家的时候,在火车站碰到一位之前的老同事。闲聊之中,发现他在寻找新的机会,原单位是老企业,没什么活力,年轻人上升空间有限。他30+岁的年纪,上有老,下有小,也是逼急了没办法。要不,他的位置,是个轻松活儿。
我是当时唯一从无锡这家名企跳到上海外企的。在他眼里,我比较另类,做了他不敢做的事情。相差5-6岁,却拿着比他多3倍的工资,此时的他,眼里充满求知欲。请我喝了30多块钱一杯的星巴克,在咖啡馆谈了1个都小时。我知道,其实他平常也就喝点超市里卖的茶。
看在这么有诚意的份儿上,我怎么都要把自己知道的那些都倾囊相送,是不是!
事实上,事业单位里的每个人,多多少少基本沟通之道是晓得的,只是不愿意用。不像现在的小朋友,问我问题,麻烦我办事,上来都是“我要怎么怎么样”,好像我欠他的。对于这种没礼貌的,我即使不拉黑,也选择不予理会。
说回正事,这位老同事原本我们是一个项目组的,他负责信息中心,我负责前道MES落地。很多软件需求,都是从MES提出,经过与工厂一线技术经理讨论定下来,再经过多轮功能迭代,再往信息中心ERP系统集成。所以很多MES功能只留在一线。
只有经历过复杂需求,才能反复锤炼自己的技术。所以如果你要是爱好技术,千万别让自己闲下来,曲不离口,拳不离手,码不离脑。多给自己提一些需求,利用不同手段去实现,你会发现自己技术前进飞快。
电子厂前道MES其实需求很复杂,基本2-3天就要改版一些功能。那个时候我也经常被压得透不过气来,2个礼拜写套系统,是常有的事情。不过看到工厂上千人都在用自己写的软件,还是蛮有成就感的。直到有瓶颈突破不了。因为MIS软件在不断地增多,数据也不断地涌进来,自然技术经理们对于报表的要求就提高。
于是,各类SQL性能问题也层出不穷。直到最后,一个党支部书记要一份报表,凭我当时的SQL水平,报表每次都要跑个10来分钟,才能搞定。他觉得这样的系统体验很不好,于是每次都给我压力。逼得没办法了,我只有天天去逛论坛,看官方文档。
也不知道哪天运气好,摸索到了微软的BI官网,看懂了SQL SERVER 2000 DTS(2005 版本后称为 SSAS) 服务。非常适合那位党支书的需求场景,利用空间换时间的策略,将查询提高到了令人发指的快速。不仅如此,配合 SSAS/SSRS 的设计,将各种柱状图集成到了MES的模块中。
一套组合打下来,这位党支书直接给我打了个当年优秀员工奖。我们IT部老大,也开始带我一起出席各种技术研讨会,尝试把这些思想用在别的部门里。这才认识了信息中心这位老员工。
这位老员工,那时相当资深,在公司做了很多年,做到了经理级别,用粗话说,犯案无数。一代的MIS系统,他参加过不少,从 VB, VB.net 玩到 c#, 数据库也是, SQL Server, Oracle 都玩过一遍了。但距我辞职以来1年都还不到,他的压力就爆发了。
其实吧,我技术没他厉害,我也知道。但我运气好,比他先接触到了数据仓库这回事。当他仍旧在 OLTP 领域吃老本的时候,我已经着手玩 OLAP了。我深信,OLAP 会有一场轰轰烈烈的市场运动。当年 RDBMS 刚火的时候,市场反应也很强烈,甚至比其他行业有着10年从业经验的老师傅的待遇都高。
但是行业火热之后总会饱和的。丁磊一说养猪,大家都跑去养猪了;乔布斯打出触摸屏,一帮人要出来做手机。市场就那么大,技术密码又那么透明,老人被年轻人追上,只是迟早的事,除非你能够快速切换赛道。
在我看来,数据仓库在当时就是风口,做数据库的人转过来,易如反掌。锦上添花的事情,为什么不去做呢?我把经典的三维模型,画给这位老同事看,他一下子就明白了。
在这张巨宽的表上,集成所有的维度和度量,通过线性压缩存储,将快速提高联机分析的速度。每种业务,都基于这个模型做抽象与变型。
如果读者朋友们,如果你做了3-4年项目,还是在处理 OLTP 的系统,有时间可以做做 OLAP 的项目。真能学到不少。
往期推荐